package org.example.myerp.mapper;

import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import  org.example.myerp.pojo.*;

@Mapper
public interface ProductMapper {
	public List<Producess> findByPager(Map<String, Object> params);

	public long pageTotal();

	public void updateProcess(Producess process);

	public void insertProcess(Producess process);

	public void delProcess(Integer id);

	public List<MakeProcess> makeproByPager(Map<String, Object> params);

	public long makePageTotal();

	public void addNewMakeProcess(ProproSheet proproSheet);

	public void addNewMakeProcessDeatils(DproList dproList);

	public double selProcessSsumPrice(@Param("pducess_id") Integer pducess_id, @Param("proSige_id") Integer proSige_id);

	public void updProcessSsumPrice(@Param("pducess_id") Integer pducess_id, @Param("proSige_id") Integer proSige_id,
			@Param("price") double price);

	public void updProFileGxSigin(Integer proSige_id);

	public List<ProproSheet> auditProcessfindByPager(Map<String, Object> params);

	public long auditProcesspageTotal();

	public List<DproList> makeProcessSh(@Param("pducess_id") Integer pducess_id,
			@Param("proSige_id") Integer proSige_id);

	public void addNewMakeProcessh(ProproSheet proproSheet);

	public void addNewMakeProcessDeatilsh(DproList dproList);

	public void addNewMakeProcesshPrice(ProproSheet proproSheet);

	public List<ProproSheet> proceseedesginfindByPager(Map<String, Object> params);

	public long proceseedesginPageTotal();

	public List<MaterialList> selProcessdesginWuliao(Integer proSige_id);

	public void insertProcessWuliao(MaterialList MaterialList);

	public void updateWuliakeyongNum(MaterialList MaterialList);

	public void udpateProcessCxsj(MaterialList MaterialList);

	public void updateProcessWucount(DproList dproList);

	public List<MaterialList> selreplaceWuliao(MaterialList MaterialList);

	public List<MaterialList> selreplaceWuliaos(MaterialList MaterialList);

	public void updatereplaceWuliao(MaterialList MaterialList);

	public void updatereplaceProcess(MaterialList MaterialList);

	public void deletereplaceWuliao(MaterialList MaterialList);

	public void wcProcessWoLiaoSigin(ProproSheet ProproSheet);

	public List<ProproSheet> newProcessWiliaoSh(Map<String, Object> params);

	public long newProcessWiliaoPageTotal();

	public List<MaterialList> shProcessWuliaoInfo(DproList dproList);

	public void processWuliaoShUpdate(ProproSheet proproSheet);

	public Integer KeNumCount(Integer proSige_id);

	public void updateProcessGxwl(ProproSheet proproSheet);

	public List<NewPlanDetail> NewPlanAddProductfindByPager(Map<String, Object> params);

	public long NewPlanAddProductPageTotal();

	public void addNewPlan(NewPlan newPlan);

	public void addNewPlanDetail(NewPlanDetail newPlanDetail);

	public List<NewPlan> newPlanShfindByPager(Map<String, Object> params);

	public long newPlanShPageTotal();

	// ����·��������ƻ�
	public List<NewPlanDetail> selNewPlanDetailsh(Integer newpro_id);

	public void okNelPlanDetailsh(Integer newpro_id);

	public void okNelPlansh(NewPlan newPlan);

	public void noNelPlansh(Integer newpro_id);

	public void noNelPlanDetailsh(Integer newpro_id);

	public List<NewPlanDetail> selNewPlanByPager(Map<String, Object> params);

	public long selNewPlanPageTotal();

	public Integer productPlanAudit(Integer proSige_id);

	public List<PdoProcess> proBaiGongDan(Integer proSige_id);

	public List<PdoProcessWuLiao> selproBaiGongDanwu(@Param("pducess_id") Integer pducess_id,
			@Param("proSige_id") Integer proSige_id, @Param("processesid") Integer processesid);

	public void insertProDisOder(ProDisOrder ProDisOrder);

	public void insertPdoProcess(PdoProcess pdoProcess);

	public void insertPdoProcessWuliao(PdoProcessWuLiao pdoProcessWuLiao);

	public void UpdateNewxsScjh(Integer[] id);

	public List<ProDisOrder> scjhshfindByPager(Map<String, Object> params);

	public long scjhshpageTotal();

	public List<PdoProcess> selPdoProcess(Integer scpgd_id);

	public List<PdoProcessWuLiao> selPdoProcessWuLiao(@Param("scpgd_id") Integer scpgd_id,
			@Param("proSige_id") Integer proSige_id, @Param("processesid") Integer processesid);

	public void okshpgd(ProDisOrder proDisOrder);

	public void delProDisOder(Integer scpgd_id);

	public void delPdoProcess(Integer scpgd_id);

	public void delPdoProcessWuliao(Integer scpgd_id);

	// ��������
	public List<KuCun> selShejiwuliao(Integer proSige_id);

	public List<KuCun> selShejiKuWuLiao(Integer pid);

	public void insertrep_temp_tab(KuCun kuCun);

	public List<KuCun> selectRid(Integer pid);

	public List<ProDisOrder> scdjfindByPager(Map<String, Object> params);

	public long scdjPageTotal();

	public void insertRep_wltd(Chuku chuku);
	public void insertRep_wltdchu(Chuku chuku);

	public void insertRep_wltd_dateis(Chuku chuku);

	public List<PdoProcess> scdjselinfo(Integer scpgd_id);

	// SELECT * FROM pd_scpgd_process WHERE scpgd_id =#{scpgd_id}
	public List<PdoProcessWuLiao> scdjselinfoWuliao(Integer scpgd_process_id);

	public void updatespdjWuliao(PdoProcessWuLiao pdoProcessWuLiao);

	public void updatespdjProcess(PdoProcess pdoProcess);

	public void updatespdj(ProDisOrder ProDisOrder);

	public List<ProDisOrder> spdjshfindByPager(Map<String, Object> params);

	public long spdjshPageTotal();

	// SELECT sjWlcount FROM `pd_scpgd_process` WHERE scpgd_process_id=58;

	public Integer selsjWlcount(Integer scpgd_process_id);

	public void updatespdj2(ProDisOrder proDisOrder);

	// UPDATE pd_scpgd SET djbz='�����' WHERE scpgd_process_id=#{scpgd_process_id}
	public void shscdj(Integer scpgd_process_id);

	// UPDATE pd_scpgd_process SET sjnum=#{}, jiaojiedj='�������' where
	// scpgd_process_id =#{scpgd_process_id}
	public void updateSjNum(@Param("sjnum") Integer sjnum, @Param("scpgd_process_id") Integer scpgd_process_id);

	public void updateSjNum2(@Param("sjnum") Integer sjnum, @Param("scpgd_process_id") Integer scpgd_process_id);

	public Integer isScdjsh(Integer scpgd_id);

	public Integer isScdjshCount(Integer scpgd_id);

	// UPDATE `pd_scdan` SET `wczt`='�����' ,`sjnum` =#{sjnum} where scpgd_id
	// =#{scpgd_id}

	public void updateScdjsh(@Param("sjnum") Integer sjnum, @Param("scpgd_id") Integer scpgd_id);

	// SELECT pucess_gid FROM pd_scpgd_process WHERE scpgd_process_id=58;

	public Integer selgid(Integer scpgd_process_id);

	// SELECT COUNT(1) FROM pd_scpgd_process WHERE scpgd_process_id=58 AND
	// jiaojiedj='�����';
	public Integer selgids(Integer scpgd_process_id);

}
